perm filename SCORE.LCS[UP,DOC]24 blob sn#347218 filedate 1978-04-12 generic text, type T, neo UTF8
****************  SCORE MANUAL ****************** 


     **********  SECTION 1  **********


The program 'SCORE' was  written by Leland Smith.   It  creates  note 
lists for the PDP10 sound generation program.

'SCORE' accomodates several instruments (27) with 30  parameters  per
instrument.  To take full advantage of this program an initialization
file  must  be  read into the sound program giving values for musical
note letters, etc.   The file 'INIT.LCS' has the necessary material.
	(MUSIC, on the system, already has INIT.LCS in it.)

You must create the input file for SCORE with the  ET or SOS  editor.
The name of the edit file  can  use  no  more than five letters.  The 
output of SCORE will use the same name but the  extension  .SCR  will  
be added.

Input  for each parameter must end with a semicolon.  Comments may be
typed  after the sign < .  Lines under 'EDIT', PRECEDE or 'INSERT' do
not need a  semicolon.   'RUN;'  will end the note list.  In general,
lines should include no more than 72 characters before comments. 

All lines must begin in column one.  All blank lines will be ignored.
Generally commas and = will be equivalent to blanks.


The first line should contain the name of instrument 1,  followed  by
its  begin  time  and  end time.   An instrument name cannot use more
than 5 characters.

The first begin time is always given in seconds.  If no  end time  is
given, a 'FINE' (the musical term for 'end') must  appear  at the end 
of one of the lists of items for  that instrument. (see Sec. 5.)  The 
end time may be set either in seconds or number of notes.

SECONDS:     If  only  2  numbers are typed, the 2nd will set the end
	     time, in seconds, for that instrument.

NUMBER OF NOTES:    If the end time is to be set in terms of the
	total number of notes, type the begin time, a dummy number
	and the total number of notes for that instrument.

Examples:

     BUZZ 0,32;   Inst1 is BUZZ, BG time=0", end time=32".
		  (data for 'BUZZ' follows.) 

     ZAP   2,28;  Inst2, BG time=2", last note will start before 
	          time 28".	(data for 'ZAP' follows.)

     ZAP2  0  0  42;  Inst3 is ZAP2, BG time=0", end time=42 notes.
	              (data for 'ZAP2' follows.)

     HISS ; Inst4 begins at time 0". It ends when an item list ends.
	    (see pg5).
	    (data for 'HISS' follows.)

Note  that  when  the end time is given in seconds it means only that
the last note to be played by that instrument  will  begin  no  later
than  the  indicated end time.  It can often happen that the duration
of the last note can extend beyond the given total end time.  This is
almost certain to happen when random note durations are used.  If the
precise ending time is  crucial  it  must be carefully checked.   See
Section 9 re. 'CUTOFF'.

Later changes in parameter data for an instrument must be preceded by
the instrument name and the time at which that data change will  take
effect.   If  the  time  is  to be in seconds, only one number should
appear.
	If  the  data  is  to  start  on  a  specific  note,  type an
instrument number and the particular note number of  that  instrument
desired.



	After the entries for each begin time are complete, the  word
'END' must appear before another instrument is dealt with. 'RUN;' may
replace 'END;' if there is no more data to come.  'RUN' must  be  the
last item of the note list.

Example:	BUZZ  3,13;  data  begins on note 13 of instrument 3.
			     (i.e. ZAP2)
		--
		--		END ; 	End this data for BUZZ
		RUN ;		No more data. run the score.









****---- SOME CONVENTIONS REGARDING PARAMETER NUMBERS ----****

In  specifying  the  parameters  for  your  instruments,  P3  is best
reserved for center frequency and P4 for amplitude. 
(See 'AMPFAC', sect. 12)



















RESTART:

Sometimes  it  may  be  desireable  to restart an instrument after an
extended rest.  If the exact duration of the rest is known it is best
simply  to  enter  the  rest  as  a  minus  number in P2 (see Sec.4).
However, if the duration of the rest is not easy to  predict  because
of  the  use of random selection or other reasons, the instrument may
be 'restarted'.   In this case the instrument name must  be  followed
by  the  word  'RESTART'  and  the then the 2 or 3 numbeers needed to
establish this new begin time and end time, as noted above.

When this feature is used this instrument name will be given the next
available number in the instrument list (up to 27) and any references
to it after the restart time must use this new number.

Example:
		TOOT  0 20;  TOOT will play for at least 20"
		   - - -
		   - - -
		   - - - ;END;

		TOOT  RESTART 28 0 15; TOOT will restart at time 28"
		   - - -		 and play 15 more notes.
		   - - -
		   - - - ;END;




     **********  SECTION 2  **********

If  data  for  a parameter is to remain the same for several notes it
should be entered as follows:

	P5 .73; 	P5 will be .73 until changed.
	P6 100.2;	Note that only 2 places beyond  the  decimal
			point will print in this manner. If for some
			reason more places are desired make  use  of
			quotes as described below.
	P3 CS5;		P3,  C#  of  the  5th octave.  (notes of the
			tempered scale used are from C1(=lowest C on
			piano keyboard)to B7(=highest B). S=#, F=flat
	P7 "10*P5";	Any  string  surrounded  by  quotes  will  be
        P8 "1.0207";	literally reproduced in the score.
	P9 P6;		P9 will always have the same data as P6.   No
			quotes   needed.  (See also  LISTS OF NUMBERS
			in Section 5.)
	P8 F14;		F14  remains  until changed.  (F1 through F15
			can be used.  For higher function numbers use
			quotes: ("F19")

	    ****Note that any F which appears in this context will be
                taken  as a function number.    The pitch class F may
                not appear as a single item unless it  is  surrounded
                by quotes. ("F")

The highest parameter number used by the instrument  must  appear  in
the data list even if its input is to be a zero.

Example:

	P2 1;		*****  SLASHES (also see Sec.12) ****
	P3 C4; 		All this data could appear on one line.
			e.g.  P2 1; P3 C4; P5 100; P7 0; END; 
	P5 100;	      P4 will be zero
	P7 0;         P6 will also be zero
	END ;

** Possible range of numbers. ----  Because of internal peculiarities
in SCORE no numbers less than -9998 or  greater  than  999998  may be 
used.   However smaller or larger numbers may appear in quotes.
















******* Following is an example of a complete page of input. ******

  The use of the code words RHY, NOTES and TEMPO are explained later.

ASSUME THAT THE EDIT FILE NAME IS 'SCALE'.
	(THE OUTPUT WILL BE ON 'SCALE.SCR'.)

    SCALE *** This creates the score for a C-major scale with bass.
   (SINCE NOTHING APPEARS IN COLUMN 1, THE ABOVE WILL BE IGNORED.)
TOOT 0 1 8;	< BG time=0, inst 1 plays 8 notes.

P2 RHY/8/16//8//4//2; < Rhythm is 8th,  2 16ths,  2 8ths,  2 quarters,
                       half.  See section 4 and following for use
       		       of 'RHY', 'NOTES', etc.

P3 NOTES/C4/D/E/F/G/A/B/C5; < Scale goes up from middle C.

P4 500; P5 F2; END;< Ampl(P4)=500, envelope is sostenuto (F2).


CLAR 0 2 5; P2 RHY/4 X 4/2; < 4 quarters and 1 half.

P3 NOTES/C3/A/F/G/C;<Bass notes

P4 450; P5 F3; END;< F3 will give semi-staccato.

TEMPO/ 96 ; < MM=96 

RUN;

     **********  SECTION 3  **********

***** RANDOM SELECTION *****

If random selection is desired, type at least  3  numbers  after  the
parameter  number.   The  first  number  will  be  a percentage (as 1
[=100%]  or  .76  [=76%]) and the next two will set the limits of the
random selection.   e.g.  '1 200,300' means 100% of the time a number
between  200  and 300 will be chosen. Several random selection ranges
may be typed for a single parameter, but


	%%%% only two lines of 72 characters each may be used. %%%%
       If a second line is needed, the first one must not end with ;

Care must be taken that the sum of the first numbers of each set of 3
is exactly 1 (=100%).

In  the following example for P5, 50% of the time a number between 20
and 100 will be chosen, 10% of the time between 0 and .7, 10% of  the
time  the  number  200, 25% of the time between 107 and 115 and 5% of
the time the number 1000.

P5  .5 20,100  .1 0,.7  .1 200,200  .25 107,115  .05 1000,1000;
	(71  spaces used.)

If  random  selection  of  tempered  scale notes is desired, use note
names instead of numbers.

Example:


P3  .5 C2,C3  .2 FS4,FS  .3 D6,F;< If no octave number is  given,  the
				  last listed applies.

	(Function numbers may not be dealt with in the above manner.)

Individual  literal  statements  may  be selected at random using the
following form.

	P7  .2 "P3*100"  .3 "440"  .5 "P3+POWER(P6,2)";
   <POWER is a function in the MUSIC program, =n1 to the power of n2.
	P5 .6 "F1"  .4 "F2" ;  <60%:40% random choice of functions.

The strings are surrounded by quotes  and  may  have  any  number  of
characters.  The  percentage numbers in the example above must add up
to 1 (100%) and and all such random data  must  appear  on  a  single
line.   Data consisting of ordinary numbers, or notes cannot be mixed
with literal strings.



















***** P31 RANDOM TEMPO FACTOR *****

When  P31  is  set,  the  number  will  represent  the  maximum  time
deviation,  +  or  -, of the note duration numbers found in P2.  Note
that the deviation is in terms of BASIC TIME, hence  a  tempo  change
will not produce a change in the range of deviation.  Check carefully
the results of using P31.

Example:	P31 .06;< Up to 6/100" random tempo deviation.

The 'ALL' feature does not! work with P31.



***** P32 RANDOM RESTS *****

Random rests may be entered  by  calling  for  parameter  P32.    Any
number from 0 to 1. (0% to 100%) may be typed.

Example:	P32 .15;

If  .15  is  typed,  a  random  selection of 15% of the notes of that
instrument will have rests of durations set by P2. The 'MOVE' feature
(explained later) may be used with P32.

     **********  SECTION 4  **********

********** SPECIAL CODE WORDS **********

	RHYTHM;		(RH) [acceptable minimum abbreviations]
	NOTES;		(NO)
	NUMBERS; 	(NU)
	FUNCTIONS;	(FU)
	NAMES;		(NA)   Sequential list of inst. names.
	RLIST;		(RL)   Sequential list of random num ranges.
	RNOTES;		(RN)   Sequential list of random note ranges.
	MOVE;		(M)	    | The code word must immediately |
	MOVX;		(MX)	    | follow the parameter number.   |
	LITERAL;	(L)	    |	Example:  P2 RHY/            |
	DF;		       Duty factor.
	REPEAT;		(RE) OR (X)
	CUTOFF;		(CU)
	SUBN;
	SUBL;






Most  non-random  aspects  of  musical input will be made in terms of
lists of events.  The code words RH, NO, NU, FU, LI are used for this
purpose. If you are using a list for input for P2 (RH or NU) and also
a list for P3 (NO or NU) and perhaps a list of functions (FU) in some
other parameter, in most cases you will want to have exactly the same
number of entries in all lists.  A point of possible confusion arises
with  the  use  of  rests!   All lists step forward for each new note
whether or not that "note" is a real sound or a silence.  Thus if the
3rd entry in a list of notes is /R/ (for "rest") there obviously must
be a duration given for that rest in P2's list.  It follows that if a
list of functions is given in P5, the 3rd entry will be a "dummy".

When typing in extended lists it is always a good  idea  to  organize
the  various  lists  according  to  some  simple  visual scheme.  For
example, if the music involved has bar lines, their presence  can  be
shown  by the use of 2 or 3 extra spaces at the appropriate points in
each list.  You will come to appreciate any possible  aids  to  proof
reading.

*********** RHY (FOR MUSICAL RHYTHMIC TERMINOLOGY) ***********

Entries under 'RHY' will always be in terms of the fractional part of
a  whole  note. Thus '4' represents a quarter note, '16' a 16th note,
'12' an 8th note triplet,  etc.   For  dotted  rhythms  add  dots  to
numbers.  Composites are entered by typing up to 5 numbers.  To enter
a double dotted 8th note, type /8../, a dotted half tied to the first
of a triplet, /2.,12/, etc.

If several notes in a row have the  same rhythm,  type  'VALUE  X  N'
(where 'VALUE' is up to 5 numbers representing a rhythmic duration, X
is for 'TIMES' and 'N' is the number of equal values).  Thus to repeat
15 dotted quarter notes, type /4. X 15/.

Complete rhythmic units must be separated by slashes. If no new entry
appears between slashes (or a slash and a semicolon) the  last  entry
will  be  repeated  for each slash.  Several lines may be used.  Each
line but the last must end with a slash.  The last  line  of  a  list
must  end  with  ;.  The  semicolon may serve the double purpose of a
slash and the end of the string of entries.

Example:	4///8 X 9/2/; < 3 quarters, 9 eighths, 2 half notes.

	-----------------------------------------------
Any group of varied rhythms may be repeated several times by entering
'REP'  or  'X' and N1,N2.   N1 will be the number of entries involved
and N2 will be the total number of times the group will occur.  If no
2nd number appears, N2=2.

Example:	4/8 X 5/2./REP 7,3/2; The group of 7 rhythms,
	     1 quarter, 5 eighths and a dotted half will play 3 times.

Here 'REP' and 'X' are interchangeable and  may  also  be  used  with
lists under 'NOTES','FUNC' and 'NUM'.

Type ';' to terminate a string of rhythmic  entries  before  listing
data for another parameter.

For  rests, the first number appearing must be negative. A whole note
rest plus a 16th rest would be entered as /-1,16/. Rests may also  be
entered with 'NOTES'.

If fewer rhythms are entered than are required to make up  the  whole
duration of a section, the series given will loop until some new data
is entered.  This will work the same way for any sequential lists  of
data.

xxx TEMPO xxx

The tempo  may be set for each instrument separately under P2, or for
all parts at once (the preferred method)  after  all  other  data  is
entered.  See SECTION 11 regarding use of TEMPO.


If the tempo is set under 'P2 RHY' use the following procedures.

Normally,  3 numbers will be given on each line. N1=duration N2=tempo
at start of dur. N3=tempo at end of dur.   Up to 30  changes  may  be
made  at  a  time.   The  tempo  may  be  set  in either of two ways.
Conventional metronome numbers may be used, (I.e.  mm=the  number  of
quarter notes per minute), or the tempo may be set in terms of 'tempo
factors'.  The 'tempo factor'  1  is  equivalent  to  mm=60.   'Tempo
factors'  must be less than 10, 'mm' numbers must be greater than 11.
If only one number is given after 'TEMPO' it will be taken as a fixed
tempo, not as a duration.

Example:	TEMPO/ 96 ; < mm=96 unless changed at some later time.

If  you  type 11 45 120, the tempo will shift from the first tempo to
the second tempo during the course of the  number  of  quarter  notes
given.  (The numbers 11 .75 2 will be taken as  'tempo  factors'  and
produce exactly  the same results.)  If you type two numbers, a third
number will be assumed as the same as the second number.

Example:P2 RHY/
        TEMPO/10  84 112/ <Changes from mm=84 to mm=112
		   	  in 10 quarter notes.
	5 112/            < Tempo will remain at 112 for 5 quarters.
	108;	          <  Tempo will stay at 108. must end with ';.
	4/8//4/16/etc.	  < Rhythm data must follow immediately.

(Note:   It  is probably more convenient to set the tempo changes for
all parts at once with the 'TEMPO' feature described on page 17.   If
this  is  done  it  is best to omit 'TEMPO' data under 'P2 RHY;'.  If
'TEMPO' is not mentioned, mm=60.)


     **********  SECTION 5  **********

************ NOTES (do not use with P2) *************

Use this code word to enter note letters.

When the file 'NOTES' has been read into the music  program  (already
present  in MUS10), the program will understand the tempered scale as
follows.    'C4'=middle C, 'C3'=1 octave below,(prints as  C/2)  'C2'
=two  octaves  below,(prints  C/4) 'C1'=three octaves below, 'C5'=one
octave  above,  'C6'=two  octaves  above,  etc.      'CS'=C#,'GS'=G#,
'AF'=Ab,  'EF'=Eb,  etc. If a rest is desired, type 'R' (with 'NOTES'
only).

Example:	P3 NOTES/
		C4/CS/R/D/DS//E// < Last 2 entries each play twice.
		F X 6/            < 6 F's.
		REP  7,4;   < Last 7 entries play a total of 4 times. 
				    ';' ends the list.

Each octave is taken as starting with the  note  C.    Normally,  the
octave  number,  once  given,  will  stick  until a new octave number
appears.  Thus, to move a 1/2 step B  to  C,  /B3/C4/B3/C4/  must  be
typed, whereas /E4/F/E/F/ also gives 1/2 steps.

A  different, "PROXIMITY", mode may be used by typing 'P' in front of
the 1st note entered.  This mode automatically chooses the  following
octave numbers so as to produce the smallest intervals between notes.
/P B3/C/B/C/ gives 1/2 steps.

In  this  mode,  skips  up or down of greater than a perfect 4th must
include an octave number.

PROXIMITY mode may be left by typing 'O' (for ordinary) in front of a
note and its octave number.  /O B3/C/ gives a major 7th.


If no duration is earlier specified (see pg 1) the  list  in  'NOTES'
must  end  with  the  word  'FINE'.  'FINE' may be used with 'NOTES',
'NUM', 'RHY' or 'FUNC'.

Example:	P3 NOTES/A5/G/FS4/D/B3/FINE;

		'FINE' ends NOTES (and sets duration at that point.)

         ******************** CHORDS *************************

Under special circumstances chords may be entered in 'NOTES'.  It must
be remembered that in its current form 'MUSIC' does not allow a single
instrument to play more than  one note at a  time.  With  the  'SCORE'  
program it is possible  to  get  around  this restriction because each
time an "overlap" is sensed the name of  the  instrument  involved  is
altered  by  raising  the  last  letter  in  the  name one step up the
alphabet.   Thus if your instrument name were ZIPA and an overlap were
detected the next appearence of that  instrument  would  be  under the
name ZIPB, etc.  There is a  special program (DUPINS) for the  purpose
of making duplicate instrument definitions with an alphabetical change
on the last letter of each name.  For the use of 'DUPINS' see below.  

To indicate  chords  the note  names  should be  separated  by  colons
instead of slashes.  The slashes  then will still indicate the  bounds
of each rhythmic unit.  The  various repeat features work with  chords
as if they were individual notes.  Chords may be included in 'MOTIVES'
(see Sec. 7.)

Example:  The note sequence desired is C sharp, a chord of D, F, A,
          and then the chord is repeated.

           CLARA  ;
           P3 NOTES/ CS4/ D:F:A//
           P2 RHY/8//4/
           . . . .
           . . . .
           . . . .
           END;

      The 'SCORE' printout will appear as follows:

    CLARA  0  .5  CS  . . . . . . ;

    CLARB  .5 .5  D   . . . . . . ;
    CLARC  .5 .5  F   . . . . . . ;
    CLARA  .5 .5  A   . . . . . . ;

    CLARB  1  1   D   . . . . . . ;
    CLARC  1  1   F   . . . . . . ;
    CLARA  1  1   A   . . . . . . ;


A  separate  program, 'DUPINS', exists  to facilitate the duplication of
instrument   definitions   in  edit  files.   DUPINS  expects  that  the
word INSTRUMENT appears at the beginning of a line and the word END also
comes at the beginning of a line.  (Be careful that if  the  word END is
used  anywhere else inside of an instrument  that  it does not appear at
the start of a line.)  

DUPINS  will  ask  you how many duplicates of a given instrument you may 
want.  The duplicates will have names wherein  the  last letter advances
alphabetically.  Thus the limit is 25 duplicates of an instrument  whose
name  ends  with  the  letter A.   Example:  INSTRUMENT BLURB duplicated 
three times would produce BLURC, BLURD and BLURE in addition to BLURB.


************* LIT (do not use with P2) *************

******  When using the code word LIT the literal material need not be 
surrounded  by  quotes.   However  if  quotes  are  not  used special
characters must be used to avoid  confusion in the role of  "/",  "," 
and ";" in  your lists.   If quotes are not used, % must used where a 
literal / is desired  to  be  printed,  a ! must  be  used where , is 
desired, ? must be used where a ; is desired  and  & must  replace ".
Clearly it is simpler to use the quotes with these various characters
unless the quote sigh itself is required in a string of characters.

	% = /	    ! = ,	? = ;      & = "     # = <

If literal data is surrounded by quotes  no  special  characters  are
needed.   Entries must be separated by  slashes.   Extra slashes will 
repeat items, but 'X' or 'REP' may not be used for repeats.   
However, as with  'NOTES', 'RHY',  'NUM'  and  'FUNC',  any series of 
entries  will loop until changed at  some  later  begin  time.    The
series  of  literal items must be ended with a ';'.

Example:	P12 LIT/
		"P4*2" ///"P4*3"/"P5/3"/ < First item will  be  used  3
					 times.
		"P11+5"/",-52"; < A negative value with nothing in front
	           of it must be preceded by a comma in any literal data.

   The same input could appear without quotes as follows:
         	P12 LIT/P4*2///P4*3/P5%3/P11+5/!-52;

	(/"A"// or /"A"/; will cause the 'A' to appear twice.)


*************** NUM (use with any parameter) *************

This  works exactly the same way as 'NOTES' except that numbers only!
may be typed.   'NUM' is useful in setting strings of note  durations
or amplitudes without regard to musical terminology. Lists of numbers
may also include calls  on  other  parameters  by  entering Pn in the 
list.

Example:	P5 NUM/100/200//300 X 10/452;   ';' ends the list.
         	P12 NUM/1000/P7//2000/P5 X 6;

		  In the above example, P12 will print the contents
		  of P7 for the 2nd and 3rd notes.  The last 6 notes
		  will print the contents of P5.
 

**********  FUNC (do not use with P2)  **********

This  works  as above.  Functions 1 through 15 are available. Do not!
use 'F' with the function numbers in this case only!

Example:  P7 FUNC/3//4 X 4/5/REP 3,2; <=F3,F3,F4,F4,F4,F4,F5,F4,F4,F5.
				      ';' ends the list.

     **********  SECTION 6  **********


***** RLIST (RANDOM LIST OF NUMBERS) *****

With RLIST a sequential list of random selection ranges  of  ordinary
numbers may be entered.  The list is terminated by a ';'.

  ***** The repeat of a unit by means of a slash may be used but
  REP must !!not!! used.  'Motives' are possible. (See Sec.7)

	EXAMPLE:  P4 RLIST/50,200//1000,1000/700,900;


***** RNOTES (RANDOM LIST OF NOTES) *****

RNOTES has the same features as above but using note  names  for  the
ranges.

	EXAMPLE:  P3 RNOTES/C4,CS/E,GS//B,F5/D3,D;



***** REP or X (N1,N2,N3);  ***** 

'REP' or 'X' is used in conjunction with a parameter number to repeat
any  previously  entered  data  into  the  current parameter.  In the
following examples assume that 'ZAP' is instrument 2.

If  no number follows 'REP', data of the same parameter number of the
previous instrument will be repeated.  If one number is used, it will
be a parameter  number  of  the  previous  instrument.   If 2 numbers
appear, the second will be an instrument number.   A 3rd number  will
cause  the  data to be repeated for all following instruments through
the number given.

Example:ZAP  ;
	P2 REP; < P2 of ZAP will have same data as P2 of previous inst.
	P5 REP 7; <	Repeats data of P7, previous inst.
	P8 REP 5,2; <	Repeats  data  of  P5, inst 2.
			(i.e. ZAP.  See below re.';')
	P9 X 4,1 5; <	P4,  inst1,  repeats in this and all insts up
			to inst 5.
	P10 X 6,3; <	Repeats P6 data,  inst3 
			(This data must already have appeared above.)

>>>>>> N.B. Use REP with MOVE data only if the  begin  times  of  the
instruments   involved   are  the  same.    See  Sec. 10   for  other
information regarding 'REP'. (Also see 'DUPL', Sec. 10.)

To repeat  data  from  one  parameter  to  another  within  a  single
instrument the semicolon (or slash) alone may be used.

Example:	P12 1.23; <   No other data may appear between this and
                	    the next line.
		P7  ; <  Repeats  data of P12. Be sure a space precedes
     		       ';'.

When using any kind of random selection 'REP' will repeat the  limits
of selection only, not the particular choices made.
To repeat the choices themselves use '-9999.PN' (See Sec. 2).


Example:	P4  1 10,100; < P4 chooses a number between 10 and 100.
		P12 P4;      <The choice of P4 will also appear in P12.

     **********  SECTION 7  **********

*********** MOTIVIC REPEATS [ ( ), @, $, - ] **********


When any motivic group of items appearing in RHY, NUM,  NOTES,  FUNC,
LIT  or  DF  is  to be used several times the group may be associated
with any letter of the alphabet by surrounding  it  with  parentheses
The  identifying  letter  must  precede  the left parenthesis and the
right parenthesis must follow the last item  to be  included  in  the
group.

Example:	P3 NOTES/A4/ Q (BF/D5/F/D )/ G4/ etc.

From this point on the motive  Bb-D-F-D  may  be  entered  by  simply
typing / @Q /.    The '@' sign must always  immediately  precede  the
identifying  letter.   When  '@'  is  used  only  a single letter may
appear.   However  the  various  repeat  features  may   be   applied
thereafter.  / @Q/REP 2/ would create /BF4/D5/F/D/F/D/, i.e. the last
two items of 'Q' would be repeated.  

In the  above  example  @Q  could  also  be  used  in  any  following
instrument to enter that sequence of notes.


It is possible to nest motives.  In  the  following 'X' will  include
'Q'.

Example:	/ X (E4/ @Q / E )/	

>>>>>>>> N.B. In this case the octave (5) number of the last item  of
the  Q  motive will never carry over into the next note.  Rather, the
last actual number given (4) will hold until changed.

In the following, motive 'J' will include motives 'M' and 'K'.

	/J( M( E4/G/A )/ B/K( BF/C5/D )/ F )/
	  |  |________|     |_________|    |
	  |________________________________|

N.B. No more than 2! left parentheses may be open at one  time.   The
right  parentheses always will close off the nearest left parenthesis
which is still open.

 	XXXXXXXX   TRANSPOSITION   XXXXXXXXXXX
   (NONE of these tranformations may be used with 'LIT'!)

MOTIVIC TRANSFORMATIONS may be created in several ways.  A number may
be added after the identifier.  /@Q 12/, /@Q -5/, /@T .3/
If the motive is appearing in NOTES the  number  will  refer  to  the
number  of 1/2 steps transposition to be made.  In the 1st case above
the notes of Q would now appear  8va  higher;  in  the  2nd  case,  a
perfect 4th down (-5 1/2 steps.)

	XXXXXXXXX  AUGMENTATION, DIMINUTION  XXXXXXXXX

If the motive appears in RHYTHM, NUMBERS or DF, the added number will
become a multiplier.  If 'T' were established as follows:

     p7 NUM/ T(111/ 222 / 300 ) ; 

/@T .3/ would produce / 33.3 / 66.6 / 100 /.

***** Note that any multiplier in the time or  rhythmic  domain  will
simply  multiply the note durations.  Thus a 3 would make all notes 3
times longer, .333 would make them 1/3 as long.


	XXXXXXXXXX  RETROGRADE MOTION  XXXXXXXXXX

Motives may be used in retrograde motion by simply typing '-'  before
the  identifier.   /@-Q/ causes motive Q to be played backwards.


	XXXXXXXXXX  INVERSION  XXXXXXXXXXX

When using NOTES it is possible to invert motives  by  inserting  '$'
before  the  identifier.    /@$Q/  will  give  an  exact  intervallic
inversion of motive Q.  If Q  included  the  notes  /C4/D/EF/,  /@$Q/
would produce /C4/BF3/A/.  Note that if the retrograde is used at the
same time as '$', the inversion will turn on the  last  note  of  the
original motive. Thus /@$-Q/ produces /EF4/FF/GF/ (i.e. Eb,Fb,Gb).
Note that the intervals of chords will  invert just as melodic lines.
A  C - E - G chord will invert to C - A flat - F.

Transposition may be done at the same time!  /@$-Q -6/ means  that  Q
will  be inverted, played backwards and the 1st note to be heard will
be transposed down 6 half steps (a tritone) from the  original.  Thus
the notes will be /A3/BF/C4/.

(CURIOUS RESULTS ARE PRODUCED WHEN INVERSION IS APPLIED  TO  RHYTHMIC
MOTIVES.   THE  FIRST REAL TIME VALUE SERVES AS A PIVOT AND ALL OTHER
REAL TIME VALUES ARE PRODUCED BY  ADDING  THE  PIVOTAL  VALUE TO  THE
DIFFERENCE BETWEEN THAT VALUE AND EACH OTHER VALUE.  IF THE REAL TIME
VALUES WERE .5 .25 .1 1 1.25 THEY WOULD INVERT TO .5  .75  .9  0  AND
-.25.   THUS  THE  LAST ONE WOULD BECOME A REST AND THE ONE BEFORE IT
WOULD HAVE NO TIME VALUE.  THIS SEEMS TO HAVE LIMITED USEFULNESS!)

     **********  SECTION 8  **********

****************  MOVE, MOVX, MOVP  *******************

MOVE may be used for gradual changes from one  number  (or  note)  to
another or from one range of random selection to another.  MOVE works
on a straight line basis.   Use  MOVX  if  an  exponential  curve  is
desired.

If no random element is involved, 3 to 1 numbers may be typed on each
line.

Example:   P3 MOVE/3 C4,D5; < In 3" moves from C4 to D5.
	   			';' ends MOVE. P3 will stay at D5.
	   P4 MOVX/12 100,1000/ < In 12",  moves exponentially from 10
				to 1000.
	   10 1000,70; < In 10",  from 1000 to 70.  ';' Ends list.
				P4 stays at 70.
	   P5 MOVE/15 1000/ < Stays at 1000 for 15".
	   2500; <  Holds at 2500 until end or later change.

For changing random ranges type 5 numbers on each line.   You  should
type  a  duration  (in  seconds),  a lower and upper limit for random
selection at the beginning of the time and a lower  and  upper  limit
for random selection at the end of the duration given.

When ALL the durations given have passed, the parameter will continue
to  choose  from  the  last selection range.  

IF A SLASH OR SEMICOLON APPEARS WITH NO NEW DATA BETWEEN IT  AND  THE
LAST ONE, THE DATA LAST GIVEN WILL BE REPEATED.

	P7 MOVE/10  100 2000/ / 5 2000 50;  
		THE 100 TO 2000 MOVE WILL OCCUR TWICE.


EXAMPLE:  If you should want the amplitude to gradually increase from
any number between 200 and 300 up to the number 1200 over a period of
15 seconds and then return to the range  300,350  over  the  next  10
seconds type the following:

	P4 MOVE/   < Upper limit moves from 300 to 1200, lower  from
		     200 to 1200.
	15 200,300 1200,1200/
	10 1200,1200 300,350/ < Now moves to new limits.
				';' will end the list.

N.B.  You may not! mix the 2 types of entries used with MOVE or MOVX.
      If any units contain 5 numbers, they all must!

MOVE  (but  not!  MOVX!!) may also be used with 'P32'.   In this case
only 3 numbers may be used in each MOVE unit.    To  gradually  shift
from  no  rests to 80% rests in 20 seconds, then back to 20% rests in
the next 13 seconds type:

Example:	P32 MOVE/20 0 .8 /13 .8 .2; 

Note that the first time value in MOVE will start from whatever begin
time  was  last  given  for  that  instrument   regardless   of   the
instrument's original begin time.

Example:	ZAP   23.4; < Next data begins at time 23.4"
		P6 MOVE/
		12 100 350; <P6 moves from 100 to 350 during time 23.4
			    to 35.4".  ';' will end the list.

***** MOVP **********

This is a rather special form of MOVE which allows for a gradual shift
from the selection of one parameter, or  one  group  of parameters, to
another parameter or group.

	P12 MOVP/20  7,8.9   8,10.9;

	This will cause a moving random selection within the given
	limits over a period of 20 seconds.  At the beginning P12
	will use whatever is in P7 or P8.  As time progresses the
	possibility of choosing P7 becomes less and less until at
	time 20 only P8, P9 or P10 will be chosen.


******* WARNING !!!!  ********

Problems (round-off errors) can occur with MOVE begin  times  if  the
instrument  does  not have its first begin time at time 0.  If a rest
is needed as the first note for an instrument using MOVE it  is  best
to put it into P2 and then have the instrument start at time 0.

Be sure to proof read carefully.


********** CONTINUATION *********
 
The mode of parameter input may be altered within a single parameter
by means of 'CONTINUE'.  This word, or simply 'CO' may be typed where
a new parameter number is expected.  This will 'continue' the previous 
parameter up until the next semicolon.  This will often be useful when
used with literals.   Example:
 
	P5 1000; CO "*"; CO MOVX/10 1 3; P6 F7;
 
In this case SCORE will print out the following:
 
  	1000  *  n  F7
 
'n'  will be a number between 1 and 3 as produced by the MOVX.
 
  CAUTION!!  When using CONTINUE all the parameters must appear in 
	     ascending order.  Internally, each CONTINUE advances the 
	     parameter counter, so that in the example above the first 
	     'CO' has become P6, the second one has become P7 and then 
	     what is listed as P6 becomes P8.  However the MUS10 program
	     will treat this input in terms of the actual parameter
	     numbers typed.

	     Also if one parameter is to refer to some other parameter 
	     you should use quotes.  Type, for example,   P8 "P7"; 
	     NOT  P8 P7; if you want P8 to use the same data as P7.  
	     (This only applies if CONTINUE has previously appeared.)
     **********  SECTION 9  **********

********************* FUNCTIONS AND SCORE SUBROUTINES ****************

There are two ways to add special program routines to SCORE note lists.
The first way is to write functions in the ALGOL-like language which is
built into the MUSIC program.  The second way is to add a user-written
FORTRAN subroutine to the SCORE program.

*********** MUSIC PROGRAM FUNCTION ROUTINES ********************

  Some  other   examples  of   music   program  functions   appear   in
  USEMUS.DOC[DOC,LCS] and MUSIC.DOC[DOC,LCS].   The rules involved  are
  those of  the simpler  applications of  the 'SAIL'  language.   These
  functions can be written in separate files, independant of the  SCORE
  program.

  For the following purposes be sure that the function appears in  each
  parameter list AFTER! all parameters involved have been  established.
  The word "PRECEDE;" causes all  text following, up to the  appearance
  of the * in column  one, to be found before  the word "PLAY;" in  the
  score.  (See section 11.)

PRECEDE;
VARIABLE W,Y,Q;   <***** SETS UP NEEDED VARIABLES 
Q←W←Y←0;	  <***** INITIALIZE VARIABLES
FUNCTION RMBR;
BEGIN 
ARRAY Z(200); <** INTERNAL STORAGE ARRAY [1ST LOC. IS Z(0)]
IF P1< 3 THEN BEGIN	<DO NEXT LINES ONLY DURING FIRST 3"
  IF Q=P3 THEN P3←P3*2; <IF SAME NOTE TWICE, SHIFT 1 OCTAVE UP
  Z(W)←P3; W=W+1; Q←P3; <STORE THE PITCH, UPDATE COUNTER
   RETURN;              <GO BACK TO MAIN PROGRAM
   END;
P3←Z(Y)/3;    <NOW IN INST.2   PUT STORED PITCH INTO P3
Y=Y+1;        <UPDATE INST.2'S COUNTER
END;
*
TOOT  0 2;
P2 .15;
P3 1 C4 B7;   <TOOT WILL HAVE 2" OF RANDOM NOTES
P4 1000;
P5 F1;
P6 F3;
P7 "RMBR";    <THE PITCHES WILL BE STORED BY FUNCTION RMBR
END;
CLAR 3 5;
DUPL 1;	      <CLAR BEGINS AT TIME 3"
P6 "RMBR";    <RMBR PUTS BACK PITCHES INTO P3
P7 F4;
END;

The following example sets up a function which can be used to  generate
any form of equal tempered scale.  The 3 arguments to the function, BF,
SN and OD can be given as fixed numbers or as parameter numbers.

PRECEDE;
COMMENT: FUNCTION MICRO(BASE_FREQ, STEP_NUM, OCT_DIV)
	OCT_DIV = NUMBER OF EQUAL DIVISIONS OF THE OCTAVE.;
	
FUNCTION MICRO(BF, SN, OD);
BEGIN
BF ← BF*EXP(SN/OD * ALOG(2.)); 
  COMMENT: the above gives BF times 2 to the power of (SN/OD);
PRINT BF;    COMMENT: this prints the frequency in Hertz.
END;
*      This ends the insert.  The * will not appear in the score.
TOOT  ;
P2 RH/15X15/4;   <using 15th note rhythms.
P3 C4;		<microtone scale will start on middle C.
P4 1000;
P5 F1;
P6 F3;  <next parameter gives the steps of the scale.
P7 NUM/0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/FINE;
P8 15;   < the octave is divided into 15 equal-tempered parts.
P9 "MICRO(P3,P7,P8)";
END;

*****  SUBL,(Subroutine,Letters),  SUBN,SUBR(Subroutine,Numbers)  ***** 

The second way to add special features  to  SCORE  is  to add FORTRAN
subroutines to the main body of the 'SCORE' program to set values for 
P2 through P30.   A  subroutine may be called from several  different
parameters.  The codes 'SUBL', 'SUBN'(or SUBR) determine  the form of
the output for the calling parameter.  The heading for the subroutine
must be exactly as follows:

	SUBROUTINE SUBR
 	COMMON /INS/ INST(27),BG(60)
	COMMON P(30),INUM,IPAR,CNT(27),BT,PL(48),IREST,DF,DUR(27)
C   INST=INSTRUMENT NAME,  BG=BEGIN TIME OF EACH INST.
C   INUM=INST#  IPAR=PARAM#  BT=BASIC TIME P1  WHEN SUBROUTINE IS
C   CALLED, IF IREST IS <0, THAT NOTE WILL BE A REST.
C NOTE #S IN SUBROUTINE:(1-84) C1=1  C4=37  FS4=43  C5=49  B7=84 R=85
C   FUNCTIONS ---- F1=86, F2=87, . . . . F15=100 (NO F16!)

'CNT'  is  the  note number for each instrument.  'BT' is the 'basic'
begin time (i.e. uneffected by 'TEMPO' or 'TF') of each note.
To call the subroutine from any parameter type:	P4 SUBN; P7 SUBL; etc.
If  the last parameter of an instrument calls the subroutine, all the
other parameters may be reset in relation to each other  in  any  way
seen fit.  (This is not true when a duty factor (DF) is involved.  If
the duty factor is used or changed in the  subroutine  the  parameter
used to call the subroutine must came LATER.)
The PL array is used to show the type of printout  desired  for  each
parameter.   If  there is to be no change from the original state, PL
may be ignored.  If you wish to change 'NOTES' input to a number, set
PL(n) [n is the param. number] to 1.

		P(3)=445.
		PL(3)=1.	If P3 had been printing 'NOTES' data,
				at  this  point  the number 445 would
				print.

To cause the printout of a tempered scale note  name  or  a  function
number set PL(n) to 2.

		P(3)=20.	The original mode for P3 was numbers.
		PL(3)=2.	Printout will be G/4.

		P(7)=89.
		PL(7)=2.	P7 will print as F4.

To make the change to a 5 character literal printout, change PL(N) to
3.
		P(5)='CS/4'	Regardless of the original form of P5
		PL(5)=3.	It will now print those characters.
				(up to 5)

NOTE THAT TO PRINT OUT LITERALS CREATED BY THE SUBROUTINE
PL(n) MUST BE SET TO 3 -- EVEN IF THE CORRESPONDING PARAMETER
WAS ORIGINALLY USING SOME SORT OF LITERAL!!!!!

	### never alter PL(2)!!! ←←←


If some interaction between instruments is  desired  there  are  many
ways  to  move  parameter  information  around.   The  use  of  dummy
parameters (those which are not used in any  instrument)  which  call
the  subroutine  is a good way to store parameter data for later use.

!!  SPECIAL PROBLEM with P2 !!  If P2 is set  with  'P2  SUBN;'  all
TEMPO  changes will effect the note durations in the usual manner. If
P2 is reset during any other subroutine calls TEMPO changes will  not
be effective.  Also 'duration' set in seconds may have to be adjusted
to 'real time' values.

Use the duration array,  DUR(n),  to  cause  any  instrument  to  end
prematurely.  ('n'  refers to the instrument number.)   Whenever P(1)
equals or exceeds DUR(n) no more notes for that  instrument  will  be
printed.  Thus to cause an ending, set DUR(n) to zero one note before
the desired ending.

************** LOADING THE SUBROUTINE ************************

After you have written your FORTRAN subroutine you must load it in 
the following manner.  Type:
				LOAD SUBR,SCORE[SCR,LCS]
If you have made any programming errors the normal FORTRAN messages
will appear.  If the program compiles and loads successfully you
should 'save' it immediately.  To do this type:

				SAVE SCORE

This will save SCORE with your subroutine on your disk area.  To run
it then type:
		RUN SCORE

(R SCORE gets the system SCORE, RUN SCORE gets your copy.)


The following subroutine is included in SCORE.SAV (which you get when
you  type R SCORE.) In order to use this routine P11 and P12 must not
be required by the instrument since they are used to transmit numbers
and to call the subroutine.

C*****  THIS ROUTINE DIVIDES OCTAVE INTO ANY NUMBER OF EQUAL PARTS

	SUBROUTINE SUBR
 	COMMON /INS/ INST(27),BG(60)
	COMMON P(30),INUM,IPAR,CNT(27),BT,PL(48),IREST,DF
C   CALL SUBROUTINE FROM P12. P3 CAN BE NOTES OR NUMBS.
	X=P(3)
	IF(PL(3).EQ.1)GO TO 1
	X=IFIX(X)
C  FOR RAND NOTES TO LOCK ON NOTE NUMBERS.
	X=30.8677*2**(X/12)
C  X=FREQ. IN HZ. BASED ON NOTE # IN P3 (OR GIVEN FREQ.)
	PL(3)=1.
C  THIS CAUSES FREQ. NUM TO PRINT INSTEAD OF LITERAL CHARACTERS.
1	P(3)=X*2**(P(11)/P(12))
C  P12=# OF DIVISIONS OF THE OCTAVE. P11=CHROMATIC STEP IN THAT DIV.
	RETURN
	END

C   STEPS  ; TYPICAL INPUT FOR MICROTONE SUBROUTINE.
C   CLAR  ; P2 .3; P3 A3; P4 1000; P5 F1; P7 F4;
C   P11 NUM/0/1/2/3/4/5/6/7/8/9/FINE;
C   P12 9 SUBN; END;  OCTAVE IS DIVIDED INTO 9 PARTS.

Note  that  if notes of the tempered scale are chosen by random means
it is quite possible that note numbers  coming  into  the  subroutine
will  not  be  simple  integers.   In most cases it is best to change
these numbers to  integer  form  before  doing  other  steps  in  the
subroutine.  If the notes are in P3, simply include in the subroutine
a line such as J=P(3) and then use  J  for  the  value  of  the  note
number.   Of  course  some  number  must  be  put back in P(3) before
leaving the subroutine.









******  CUTOFF N1, N2  ******

CUTOFF may be used in any parameter, not required by  the  instrument
involved,  for the purpose of causing random note durations to end at
a specific time.   Two numbers should follow the code word.  The  1st
number  is the cutoff time (in BASIC TIME) and the 2nd number affects
the duration of the last note before the cutoff.

Example:	P2  1  .1  .2; P12 CUTOFF 8  .1;

This will cause some note to end at exactly 8".  The last note before
time 8" will be in the range of .1" to .3", i.e. in  the  range  from
the lowest number in the random limits up to the highest number, plus
or minus N2 (the 2nd number in P12 above.)


     **********  SECTION 10  **********

xxxxx  DUTY FACTOR (DF)  xxxxx

DF CAN SERVE FOUR  PURPOSES.  IF DF IS GREATER THAN ZERO AND LESS
THAN 100 (THE USUAL USE OF DF)  NOTES WILL SOUND ONLY DF% OF THE
TIME STATED IN P2.  In this case, DF should not exceed 1  (i.e. 100%)
unless some provision is made re. overlapping notes of one instrument
(usually forbidden).  (SEE 'NAMES' IN SECTION 6.)

   ***** if DF is made negative, the absolute value of DF will be
	 the duration of a rest following each note.

   ***** if 100 is added to DF, DF-100 will be the fixed duration
	of each note. A following rest will fill the time remaining
	before the next note.  NO OVERLAP CAN EVER OCCUR.

	In both this and the previous situation, if the total 
	original note duration is less than the value of DF, then
	no change will take place. IF A REMAINING VALUE IS ZERO OR 
	LESS, P2 WILL BE CHANGED TO P2/2.  

   ***** if 200 is added to DF, DF-200 will be the fixed duration
	of each note. A following rest will fill the time remaining
	before the next note. OVERLAPS ARE ALLOWED TO OCCUR HERE.

  ***** if 1000 is added to DF, DF-1000 will be the fixed amount of
	time added to each note.  Thus if P2 has a series of values,
	1, 2, 3, 4  and DF is set to 1000.5, the attack times will
	be as given in but the sounding duration of each note will
	be 1.5, 2.5, 3.5, 4.5.   ***** You MUST use 'NAMES' in any
	case where an instrument overlaps itself!!!

Normally DF=1, i.e.  The envelope for a .5" note  will  last  exactly
.5".   If DF=.3, the envelope will last .15" (i.e. .5*.3) followed by
.35" of silence.  'DF' may be set with any of  the  ways  of  dealing
with  simple  numbers.   'DF'  should  appear  immediately  after the
parameter number (and a space), then any other code  word  pertaining
to  numbers  may  be  used.   (Use  any  parameter  not needed by the
instrument.)

Example:	P6 DF NUM/  < List of numbers will be duty factors.
		1/.5/.7/1;<If P2=.5, a notes will all start at .5"
			    intervals.

  or:		P6 DF MOVE/10  1  .3; <The duty factor changes.

  or:		P6 DF .7; < The duty factor remains at 70%.
				overlap occurs if DF > 1.

		P6 DF -.1; < all notes followed by .1" rest
				never overlaps

		P6 DF 100.2; < all notes sound for only .2"
				never overlaps

		P6 DF 203.; < all notes sound for exactly 3".
				overlap can occur

		P6 DF 1000.3; < all notes have .3" added.
				overlap will occur

  **** NOTE:  DF affects P2 only.  TEMPO changes affect DF only when
		it is used in the first sense discussed, i.e. as a
		percentage of the given P2 values.  In the other 3 
		cases DF gives REAL TIME values.

instrument to play more than  one note at a  time.  With  the  'SCORE'  
program it is possible  to  get  around  this restriction because each
If  DF  causes  an instrument to overlap  with itself the name of  the  
instrument involved wiil be altered by raising the last letter in  the
name one step up the alphabet.  Thus if your instrument name were ZIPA
and an overlap were detected  the next appearence  of that  instrument
would be  under  the name  ZIPB,  etc.   There is  a  special  program
(DUPINS) for the  purpose of making  duplicate instrument  definitions
with an alphabetical change on the last letter of each name.  For  the
use of 'DUPINS' see Sec.5.


*************** INVISIBLE *********************

If the letter I (or the whole  word  INVISIBLE)  is  found  after  an
instrument  name,  that  instrument  name, as well as P1 and P2, will
not! print in the score.  This is useful for entering changes in  SEG
or SYNTH that are to follow set time patterns.  When using INVISIBLE,
P3 should usually have some identifier in quotes.  If for any  reason
it  were  desired  to  have  the values of P1 and P2 appear after P3,
simply set P4 P1; and P5 P2;.  Then consider that what would normally
be P3 will now be entered as P6, etc.


	DUM1 INVIS 0 10;  The name DUM1, P1 and P2 will be invisible.
	P2 1; 			The two instrument names will 
	P3 LIT/"GLISS"/"BLOP"; alternate from note to note.
	P4 P1; P5 P2; 		P4 and P5 will print P1 and P2.
	- - - etc.

See SEG and SYNTH for further use of INVISIBLE.
*******Note that Tempo Factor changes will not!! show up when  P2  is
transferred to some other parameter.************

%%%%%%%%%%%%  IE  %%%%%%%%%%%%

IE (Invisible End)  used in  the same  way as IN  makes the  end of  a
note's printout become  invisible instead of  the beginning.  Thus  if
you use  IE  in one  instrument  and then  IN  in a  dummy  instrument
immediately following it  is possible to  deal with instruments  which
have more than 30 parameters.  The first 30 parameters will be in  the
first instrument's  list but  IE will  suppress the  final  semicolon.
Then the dummy instrument  will have an IN  which will cause its  name
and first 2 parameters  to be invisible.  Thus  parameter 31 for  your
large instrument will be in the P3 slot of the dummy, etc.  (Note that
the end of your IE  instrument will print out on  the CRT but it  does
not print in the .SCR file which will be read by the MUSIC program.



************* TAP (for real time RHYTHM) **************

Use  'TAP'  to  read  in  lists  of  note durations prepared with the
'RHYTHM' program.  Such lists are treated by 'SCORE'  exactly  as  if
you  had  typed in a long string of values under 'NUM'. (The 'RHYthm'
program allows you to tap out note durations with two telegraph keys.
The program is self-instructional.)

Type  the  name  (use 5 spaces) under which you have saved the RHYTHM
list on the line after the parameter number.

Example:	P2 TAP;	 'BEATS' is the name of the list 
		BEATS ;   created by the 'RHYthm' program.

('TEMPO' and 'TF'[TEMPO factor] will affect any  data  in  P2  except
that entered by the 'EDIT' and 'INSERT' features.)


********** RTAP (coordinates real time input parts) ***********

This is similar to 'TAP' except that you must indicate at what points
the parts  are to be coordinated.  Under the name of the 'RTAP' input
file you must type a string of pairs of numbers. The 1st of each pair
will  be a duration in rhythmic units (i.e.quarter notes, whole notes
etc.) the 2nd will be the total num of notes to be fitted  into  that
rhythmic time.

With  'RTAP'  you  must  consider that the TEMPO is relatively stable
when tapping the rhythm for each part.   Any  overall  TEMPO  changes
will be entered with 'TEMPO' or 'CONDUCT'.

In  the  following example the 1st 7 notes will fit into 1 whole note
(4 basic seconds) of time.  Note #8 will begin  exactly  on  the  2nd
whole  note  of  time.  The  next  14  notes will fit into the next 6
quarter notes of time.  finally the last 3 notes will fit into a half
note of time.

Example:	P2 RTAP;
		RUBAT; Name of 'RTAP' input for this inst.
		1/7  /1,2/14  /2/ 3; three pairs.
				     ';' will end the list.


*****  DUPL N;  *****

Use this for duplicating instruments already set up.  This is similar
to  'REP'  except  that  all the parameter data entered to this point
will be copied.  'DUPL' must appear just after an instrument name.  A
different begin  time may be given the new instrument.  The parameter
data in effect at that time  will  be  duplicated,  but  all  further
changes must be dealt with in the ordinary ways. (For MOVE data to be
properly interpreted, the begin times of instruments  involved  must!
be the same.)

Example:   ZAP2  1,30;  Starting with note 30 of instrument 1 all
	   DUPL  2;     instrument 2's data will be copied by ZAP2.
 	   P7 25; END;   Any parameter may be reset immediately.

Once a parameter is set by 'DUPL' or 'REP' it will continue to follow
any  changes  occurring  in the original or leading instrument unless
the parameter has been reset in the instrument at hand.

  BUZZ  0 20; P2 1; P3 C4; P4 400; END;
  ZAP   0 20; DUPL 1; P3 E4; END;  P3 has been reset.
  BUZZ 10; P3 G4; P4 500; END;  P4 of ZAP will go to 500, P3 of ZAP 
  			                             will not change.


'DUPL' will not duplicate 'TAP' input.  (In some cases '-9999.02' 
could be used.)


***** ALL *****

If several parameters are to be the same for all instruments the word
"ALL" may be inserted after any parameter number.  The data  in  that
parameter   will  then  appear  in  all  instruments  with  a  higher
instrument number used.  If some instruments are not to use the "ALL"
data, their data may be entered in the usual way on a later line.  It
will override the "ALL" data.

BUZZ 0 1 12 ALL; P2 ALL 1; P3 C4 ALL; P4 200 ALL; END;
			This data for all unless changes appear. 

HISS  ; P3 G4; END;		'HISS' changes  P3  to  G4.  

ZAP  0  1  18; P2 .7; END;    'ZAP' plays 18 NOTES, P2=.7" 

TOOT ; RUN;		'TOOT' uses all data of 'BUZZ'.

Special care must be taken when using 'MOVE' with 'ALL'.
Check your score carefully.  "ALL" will not work with P31.


     **********  SECTION 11  **********

***** 'SEG' and 'SYNTH' *****

If  any  functions  are  to be redefined in the course of a score, by
means of the INVISIBLE feature, 'SEG' and 'SYNTH' may be  treated  as
'instruments'  --  with  the  difference  that  P1 and P2 will not be
printed out.   P3 will be reserved for the  function  name  plus  the
';'.   This data must appear with quotes. (See Section 10.)

Using 'SYNTH', suppose you should wish to change from  a  mixture  of
66%  fundamental  and  34% 2nd harmonic to 0% fund., 34% 2nd harmonic
and 66% 3rd harmonic  over  a  period  of  20  seconds  at  1  second
intervals.

Example:	DUMY1 INVIS  0 20;
		P2 1;
		P3 "SYNTH(F1);";   Sets the function number.

		P4 1; The first semicolon in the line above is part 
                       of the data.
		P5 MOVE/20 .66,0;
		P6 2; P7 .34; P8 3; P9 MOVE/20 0,.66;
		P10 999; END; SYNTH data must always end with '999'.

If the number of parameters needed for 'SYNTH' is to vary from
time to time, set the number to the maximum needed at  the  beginning
and always set all the unused pairs to 1,0 (fundamental at 0 ampl.).

With 'SEG' there are some special problems since the number of
'steps' must add up to exactly 100 and no numbers may follow the
last amplitude given.  Thus if the number of parameters needed is
variable, all those following the last used must contain ';'.

Suppose you wish a glissando rate in F12 to change in 5 
steps during 20" from 'SEG(F12);0,1 1,100;' (slow)  to  'SEG(F12);0,1
0,80 1,100;' (fast).
Set up 'SEG' with 9 parameters.  Set P2 to the times desired for each
change of F12.  Use quotes with P3 to enter '(F12);'.

Example:	DUMY2 INVIS 0 20; P2 4; P3 "SEG(F12)"; (P4 will be 0)
		P5 1;    (P6 will be 0)
		P7 NUM/1/20/40/60/80;
		P8 1; P9 100; END  ; No '999' is needed with 'SEG'.

*****  Code words not used in conjunction with instrument names  *****

	INSERT
	PRECEDE
	EDIT
	TEMPO

xxxxx INSERT N1,(N2,N3); xxxxx (Be sure to leave a space before N1.)

This  is  useful  for  adding single notes or comments. A total of 19
lines may be added.

A line may be added at a specific point in time or in terms of a note
number.

A  single  number  after  insert  will  be the insert's entry time in
seconds. If two numbers are given, they will be the instrument number
and  note  number  before  which  the  insert will appear. If any 3rd
number is given, 'INSERT' will reproduce several lines of text.    To
end  the input type '*' in column one of a final line.  This will not
appear in the printout.

An  entry  time in seconds will be in 'basic time', i.e. not affected
by 'TEMPO' or 'TF' changes.

Example:	INSERT 2.5; Next line  will  appear  at  2.5"  'basic
			    time'.
		SEG(F2);0,1  1,100;

		INSERT 3,45; Next line will appear just  before  note
			     45 of inst 3.
		PRINT(P4);

		INSERT 5,0,1; Next lines will appear at time 5".
		P23←526;
		RA←0;
		RB←0;
		*		This line will not appear in score.

Up to 75 characters may be entered in each line.  A 'comment' for the
score  may  be  typed by beginning the entry with '<' and ending with
';'.  If note data is to be inserted, be careful that P1 and  P2  are
consistent with the requirements of the music program.

xxxxx PRECEDE; xxxxxxxxx

  'PRECEDE;'  Will cause an  insert  to  appear  before  the 'PLAY;'
  statement. This is useful for setting up parameters, MUSIC program
  functions, or anything which must appear before the PLAY list. 
  Any  number  of  lines  may  be  typed.   The  PRECEDE  section is 
  terminated by the presence  of  a  * in column one.  See section 9 
  for an example of the use of PRECEDE.


xxxxx EDIT N1,N2(,N3) xxxxx

'EDIT' allows you to edit any single parameter  (except  P1)  already
written in the score or you may replace the entire list of parameters
for any given note.  'EDIT' supercedes  all  choices  made  by  other
means.

N1=inst number.  N2=note number.  N3=parameter number.

If you type only 2 numbers (inst & note numbers), you  will  have  to
insert the instrument name and all! parameters for that note and what
you  type  will  appear exactly as is in the score.   Be sure that P1
and P2 are correct.  75 spaces may be used.  If  you  also  type  the
parameter  number, you may enter new data for that parameter and note
only.

When P2 is edited it may only be a number. (Also - P2,  when  edited,
will  not be affected by 'TEMPO' or 'TF'changes.) P3-30 may use up to
5 characters.  What you type will appear as is.  Do not use quotes.

N.B. If note pitches are edited (using the tempered scale) they  must
be entered as C, C/2, CS*4, etc., not as C4, C3, CS6, etc.


xxxxx TEMPO (N) xxxxx

This is used to make TEMPO changes for all instruments at  once,  'N'
is  begin  time (in basic time) of first TEMPO change.

→→→  When TEMPO is used for the 1st time 'N' must!! equal zero.  When
'N' is omitted, =0 is assumed. Metronome numbers from 20 up or  TEMPO
factors  from .1 to 10 may be entered. Any number larger than 10 will
be understood as a MM number.

The  duration  of  a TEMPO change is always in terms of 'basic time',
I.E. when the 'overall TEMPO factor' is 1 or a  quarter  note=1  sec.
(Of  course  a  quarter  note might not equal 1 sec. If TEMPO changes
have been entered with 'RHY'.  The important thing is that the  TEMPO
factor is '1' until changed by 'TEMPO'.)

Normally,  3 numbers will be given on each line. N1=duration N2=tempo
at start of dur. N3=tempo at end of dur.   Up to 30  changes  may  be
made  at  a  time.   The  tempo  may  be  set  in either of two ways.
Conventional metronome numbers may be used, (I.e.  mm=the  number  of
quarter notes per minute), or the tempo may be set in terms of 'tempo
factors'.  The 'tempo factor'  1  is  equivalent  to  mm=60.   'Tempo
factors'  must be less than 10, 'mm' numbers must be greater than 11.
If only one number is given after 'TEMPO' it will be taken as a fixed
tempo, not as a duration.

To  avoid  confusion it is best to enter all TEMPO information in one
string.

Example:	TEMPO /20 60/  < 1st 20 beats stay at MM=60
		12  60 120/    < accel. to 120 during 12 beats.
		20  120/       < stay at 120 for 20 beats.
		7  120 40;     < retard during 7 beats. Stay at 40.

P1  and  P2  values  in 'INSERT' and 'EDIT' notes remain unchanged by
'TEMPO' and 'TF' and hence must be reset.


xxxxx CONDUCT xxxxx

Use 'CONDUCT' to read in a list of TEMPO changes  prepared  with  the
'RHYTHM' program.  (See also 'TAP' on page 6.) The list is treated by
score as if you had typed in a  TEMPO  change  for  each  beat.   You
cannot  use  'TEMPO' if you use 'CONDUCT'. (You may use 'TF' however.
see page 16.)

Example:  CONDUCT ;
	  60X ; '60X' might be the name of the list created
		 by the 'RHYTHM' program.
(Note: You cannot use 'TAP' or 'RTAP' with inst 27 if you plan to use
'CONDUCT'.)


******** SEMICOLONS **********

Many items may be put on one line. Semicolons must separate the items
and the line must end with a ';'.

Example:	BUZZ 0 10; P2 1; P3 C4 ; P5 100; P7 0; END;
		ZAP 3,15; P5 .73 ; P6 100.2 ; END;
		HISS 0 5; P2 .1; P3 1 C4,B; RUN;

→→→→ A new line must always be used after the word 'END' .



     **********  SECTION 12  **********


********** How to run 'SCORE' **********


To  run  'SCORE' type 'R SCORE'. The TTY will respond by typing 'TYPE
FILE NAME'.

You  should type  the  name  of  the  edit  file  containing all your
parameter data.  

Following  the  file  name  up  to  4 numbers (N1, N2, N3, N4) may be
typed.  (See also 'TYPE' and 'EDIT' at end of this section.)

N1=TEMPO FACTOR (TF)		N2=amplitude factor (ampfac)
N3=seconds to be omitted  	N4=duration at cutoff

(If you type 'INFO' or 'HELP'  for the file name a resume of the above  
and how many instruments are available is typed out.)

If  no  numbers are typed the following is assumed: N1=1, N2=1, N3=0,
N4=19999.


The following explains the various possibilities.


xxxxx TF xxxxx


The 'TEMPO FACTOR' controls all time elements in the score. If it  is
set to 2, all P1 and P2 time will move twice as fast.  (I.e. The time
values will be cut in half.) If it is set to .333, all time will be 3
times as long, etc.

'TF' is set at 1 (or MM=60) at start of program.

None  of the time values printed at the top of the score are affected
by the overall TEMPO FACTOR.

The 'TEMPO FACTOR' will always automatically reset itself to  '1'  at
the  end  of  each  run. Any values for P1 or P2 set with 'INSERT' or
'EDIT' will not! be changed by 'TF'  or  'TEMPO'  changes.   If  such
values  are  not  reset  errors  will  occur  in the sound generating
program.

            xxxxx  AMPFAC  xxxxx

This  controls  the  values  in P4 only.  If amplitude data occurs in
other parameters leave AMPFAC at 1.  If you set AMPFAC (N2)  at  1.5,
all P4 numbers will be increased by 50%.
If AMPFAC is to be changed but not 'TF', a 1 or  0  must  appear  for
'TF'.

Example:	TTY -- TYPE FILE NAME
		You -- ZOOM  0 1.5  <CR>

    ******* note that if you are using 18-bit samples in the MUSIC
	    program you should set the amplitude factor to some
	    number between 32 and 64 in order produce sound within
	    a practical amplitude range.



xxxxx  OMIT  xxxxx

Use this for testing small sections of  long  note  lists.   Example:
suppose you wish to run only 5 seconds from the end of a 25" list.

Example:		ZOOM  0 0 20

Be careful regarding 'INSERT' and 'EDIT' NOTES.  The P1 time of  such
NOTES is unaffected by 'OMIT'.
Also the 'TEMPO FACTOR' does not interact with 'OMIT' or 'DURATION'.
If you use 'TF' and 'OMIT' together, first get a  listing  with  'TF'
set as you wish it, then set 'OMIT' according to those time values.
'OMIT' will always automatically reset itself to '0' at  the  end  of
each run.


xxxxx DURATION xxxxx

If  you  wish  to set the actual duration to something less than that
given in the input list type the new duration as the fourth number.

To play the first 10" of a 25" note list type:
			ZOOM  0 0 0 10

To play the section from time 6.2" to 12.35" type:
			ZOOM  0 0 6.2 12.35

Sometimes roundoff problems occur.  Check your note lists carefully.


Next the TTY will type:
	 'TO DSK=1, TTY=2, BOTH=0, LPT=22, PROOF=3, DEBUG=4'

If  you  type  a  '3'  the  actual  duration  of  the  note list will
eventually appear on the TTY and the numbers of items  found  in  the
various lists.

If you type '4', the contents of the 'V array' will be printed.

If you type a second number it will become the initial random number.

If you type any third number it will cause the listing of  all  input
data  to  be  suppressed.  It will not affect the list written on the
disk.

A  FOURTH  NUMBER  WILL  CAUSE  ONLY THE INSTRUMENT OF THAT NUMBER TO
PRINT OUT IN  THE  SCORE.   THIS  IS  USEFUL  TO  TRY  OUT  A  SINGLE
INSTRUMENT OF A MULTI-VOICE SCORE AT A TIME.

Example:   TTY -- 'TO DSK=1, TTY=2, BOTH=0, LPT=22, PROOF=3, DEBUG=4'
  	   You --  2 399 1 2

  OUTPUT WILL BE ON TTY ONLY, THE INITIAL RANDOM NUMBER IS 399, 
  THE INPUT LIST WILL NOT PRINT OUT, ONLY INST.2 WILL APPEAR.








xxxxx  TYPE  xxxxx

If  when  SCORE  is  started you type 'TYPE' instead of a file name a
complete note data-list may be  entered  directly  to  SCORE  without
recourse  to  an  outside  editor.  Care must be taken as there is no
provision for backing up to correct an earlier line.  After the  word
'RUN'  is  entered  all  data  typed is put into a disk file known as
'TYPED'  which  may be later edited like any  other  file.   If  this
data  is  to  be kept it is advisable to rename the file as any later
use of the 'TYPE' feature will create a new 'TYPED' file.


xxxxx  EDIT --- Editing SCORE input as it is read in.  xxxxx

If  'EDIT'  is given as the file name when SCORE is started each line
of input may be changed.  You will  be  asked  again  to  'TYPE  FILE
NAME'.   Now  enter  the  edit  file  name.  As each line appears the
program questions if changes are to be made.  'Y' (=yes) indicates  a
change.  In  this  case  the  complete  line,  with  changes, must be
retyped.   A <CR> is taken to mean no changes are  desired.   No  new
lines may be inserted but lines may be lengthed to 72 characters. 'G'
(=go) may be used to escape from this edit mode.   If  this  type  of
editing  is anticipated when the file is first set up it is advisable
to use very short lines of text.

     **********  SECTION 13  **********


********* SECTIONS ********

If  certain  blocks  of  data  are to recur they may be given section
names which can be called upon several times.

	SECTION A;
	TOOT  0 20; P2 .1; P3 NO/ B4/ A/ G; P4 500; END;
	END SECTION;

	SECTION B;
	BUZZ  0 20; P2 .25; P3 1 C2,G3; P4 800; END;
	END SECTION;

	BUZZ  ; P5 F1; END;


	TOOT  5 -4; END;   A 4" rest begins after time 5".

	PLAY A 9;

	BUZZ  7 -3; END;

	PLAY B 10;

	BUZZ 10; P4 150; END;

	TOOT 13; P3 NOTES/ CS5/ DS/ E/ FS; END;

	PLAY A 18;
	RUN;

Sections are identified by any single character.  They are terminated
by 'END SECTION'.  In the above example, anytime the  data  appearing
in  'SECTION  A'  is  to  be  used  after  its 1st use the line 'PLAY
A,N1,N2;' must appear. N1 and N2 are numbers used to  set  the  begin
time  of  each play.  If N2 is 0 or does not appear the begin time is
in seconds.  If 2 numbers appear, the 1st is  an  instrument  number,
the 2nd a note number.

'SECTION'  may  be  used at any time in the data list.   A 'PLAY' may
appear anywhere after a section has been designated.  At any time the
data  of  a section may be over-ridden by listing new data for any of
the parameters. Above, at time 10" P4 of BUZZ  will  change  to  150.
etc.

Be  sure  to  check  your  score carefully when using this feature in
conjunction with 'ALL', 'MOVE', 'DUPL', and 'REP'.
     **********  SECTION 14  **********


The following contains examples of most features of 'SCORE'.

        THE EDIT FILE NAME WILL BE TEST. (USE UP TO 5 LETTERS.)
	TEST.SCR will be the name of the note list.

       		If the first column is blank the line will be ignored.

BUZZ ;		instrument 1=BUZZ, begin time=0", duration=# of notes
		in 'NOTES' (P3).
P2 RHY/		RHY=next entries will be in terms of musical rhythm.
4/8/16/1/-8/	quarter note, eighth, sixteenth, whole, eighth rest
4,8/1,16/	dotted quarter, whole tied to sixteenth
8,16 X 5/2 X 3/	five dotted eighths, three half notes
-12/20/		-12=1/8 note triplet rest(1/12 of a whole), 20=1/5 of
		a quarter
4//8///-8,16/	two quarters, three eighths, a dotted eighth rest
16//4/8,16/REP 3,5;	the previous 3 entries will play 5 times
        	';' signals the end of the list of entries

P3 NOTES/	notes of the tempered scale may be entered
C1/CS/D/	C1=lowest C on piano keyboard. S=sharp. F=flat.
DS/E/		The octave range will remain the same until changed.
FS4/DS/C/R/	F# above middle C, D#, middle C, R=rest.
DF5//D////	Two Db's in 5th octave, four D's.
C3/G/E/G/X 4,3/	The pattern is played 3 times.
REP 27/		Everything thus far will repeat.
FS6 X 9/FINE;	Nine F#'s, 'FINE' marks conclusion for BUZZ.
         	';' concludes list.

P4 NUM/		A list of numbers will be entered.
100//200/300 X 4/	A total of seven numbers.
50/X 3/P2/      The sequence 300,300,50 will play twice.
REP 12,3;	The entire string of  numbers  entered  will  play  3
		times, including the current data for P2.

P5 FUNC/	A list of functions.  (Use  only  F1 through F15 in a
		list).
2//10 X 3/5; 	=F2,F2,F10,F10,F10,F5.  'REP' may also be used.
          	Every 'list' must end with a ';'.

P6 LIT/		
"P3*P4"/"P3+P4"///Surround items by quotes. 2nd item appears 3 times.
"AS"/",-1"/"1"/; Comma precedes minus sign. There are no REP features
		with LIT.
      		';' will end list.  Last item will appear twice.

      		Next will be random selection of literal strings.
      		Use no more than two lines.
      		The 1st of each pair is a % number.
P7 .2 "P3*P4" .3 "P6" .33 "101.3" .17 "2";
		20% of the time it will pick "P3*P4",etc.
P8 MOVE/	To move from one number to another over a given dura-
		tion.
5 10 150/	During 5" P8 will change from 10 to 150.
3 80 43;	During next 3", from 80 to 43.
      		End with ';'. P8 will stay at last number.(43)
P9 MOVE/
6 CS5 FS4;	During 6" P9 will move down from C# to F#.
        ;	After 6" it will stay on F#.

P10 MOVE/20 10,40 100,400/ If there are 5 numbers, the last two pairs
10  30,100 30,30;    will be random selection ranges. (see comments)

P11 MOVE/11.4 C2,F2 G3,C5/ Moving ranges of random selection of temp-
		ered notes.
3 A4,A4 A4,A4/	Stays on A for 3".
5 A4,A4 C2,F2;	Returns to change of departure.
      		Octave numbers must always be given with 'MOVE'.
END  ;		Ends entries for this instrument at this begin time.

BUZZ 7.5;	Entries beginning at time 7.5"
P7 263.5;	This number will repeat for each note until changed.
P5 F11;		 "   function "    "     "    "    "    "     ".
                 (up to F15 only)
P9 AS3;		This note   will  "     "    "    "    "    "(no F's)
		If param numbers are skipped, they will print 
                out as zeros.
		Next gives random selection within specified ranges.
        	30% chance between 1 & 4, 22% between 10 & 15, etc.
P13 .3 1,4  .22 10,15 .18 20,30  .3 55,55 ;	(P13 was 0 until now.)
		Next gives random selection of tempered notes.
P15  .1 CS3,F3  .5 C4,DS4  .4 FS6,B6;
P16  1 10,20;	 100% of the time, a number between 10 and 20.
P14  P13;	Will repeat selections of P13 in P14.
P17  P2; END;   This repeats data of P2.
                 Ends entries for BUZZ at time 7.5"

TOOT 0 2,15;	Inst 2=TOOT, begin time=0", 
                2,15 means inst2 will play 15 notes.
P2 REP; 	Will repeat data of previous 
                instrument for this param number.
P3 REP 9;	Repeats P9 of previous instrument.
P5 REP 3,2;	Repeats P3 of instrument 2.
                (i.e. TOOT. just ';' does the same.)
P6 REP 6,1 4;	Will repeat P6 of inst 1 in this 
                and all insts through #4.
P31  .05;	P31 sets random tempo range to + or - .05"
                It will never vary more than .05"
P32  .2; END;	P32 sets % of random rests.

CLAR 2 9.45;	Begin time=2", dur=9.45".
P2 RHY/TEMPO/	TEMPO will be set for this instrument individually.
7 84 112/	Moves from MM=84 to MM=112 during 7".(7 quarter NOTES)
11.3 112 46/	Retards to MM=46 during 11.3".
1 96 96;	Shifts to MM=96, stays there.  
                ';' ends 'TEMPO' entries.
4 X 7/8,16/16/REP 2,15; Rhythmic items follow directly.

P3 C4; P4 100; P5 ; P5 will repeat data of param just before.
                 (Don't use with P31-32)
P32 MOVE/			(the above = rep 3,4/)
4 .1 .5/	Random rests will change from 10% to 50% in 4".
3 .6 0;		  "     "      "    "     "   60% to 0% in 3".
		A ';' is needed to end 'MOVE' entries.
END  ;

ZAP   0 8;	Inst 4=ZAP, begin time=0", duration=8".
DUPL 2;		Will duplicate all data of inst 2 (TOOT) thus 
                far entered.
P2 RTAP/	Rhythm from telegraph keys, to be coordinated.
NAME  /		1st five spaces=name of rhythm data file.
1,4,8/15 /1,1/7 /2,16/5; Coordination comes on 16th, 
                          and 23rd notes and at end.
             	';' ends 'RTAP' data.
P4 123; END ;	 P4 is reset immediately.

TOOT  2,5;	Next entries begin on note 5 of instrument 2.
P2 .2;		
P7 REP 4,3;	Data of P4, inst 3 will be repeated.
P8 "P3*P4/2+P16";    This literal string will appear for each note.
P10 SUBN;	This will call a subroutine and print numbers.
P11 SUBL;END;    "    "    "   "     "       "    "   letters.
          Be sure to leave at least 1 space after 'INSERT' or 'EDIT'.
INSERT  2.3;	Line will appear at time 2.3" (basic time!).
P24←21.3*P4+P8/P11;  <Up to 75 characters (including 
                     this comment) will appear.

INSERT  2,7; The next line will appear just before note 7 of inst 2.
PRINT P1;

EDIT  1,8,4;	The next will replace P4 in note 8 of inst 1.
440        ; Up to 5 characters may be used (don't include the ; !!)

EDIT  3,11;If no param num is given the entire note must be entered.
CLAR 2.3 .13 AS*2 250;  <Up to 75 spaces may be used. 
                        Be sure P1&2 are OK.

TEMPO/	'TEMPO' changes outside of a particular inst will affect
11 72 144/ P2 for all insts.  Be sure to check any time factors
6 144 108/		in other params and all data entries
5 108 /72;	which are time dependent. ';' ends TEMPO entries.
RUN;

     **********  SECTION 15  **********

*********** Some Supplemental Programs ************


********* MIXSCR ***********

    The SCORE program has  several  size  limitations.  For  example 
only 27 instruments may be used and the main storage array has  only
2000  words.   Also  only  30  parameters  are  available  for  each 
instrument.  By careful use of the 'LIT' feature the parameter  list
may be  made to  exceed 30.  Or the INVISIBLE and IE features may be   
used.  The  program  MIXSCR  allows  you  to  combine  any  2  SCORE
output files.  Thus if you have work which requires  for  example 30
instruments or more than 2000 words of storage you could make  up  2  
separate files involving 15 instruments each.  Then,  after  running  
them through SCORE, run MIXSCR to combine them into  one  SCORE file 
for the MUSIC program.  The MIXSCR program is self-explanatory.



******************** DUPINS ************************

	See Section 5 under CHORDS.




******* PLAY *********** 

This program is used for real-time play.

PLAY reads a single  sound file (TEST.SND is  default name)  from  the
disk.

The play-back sampling rate is established by the 'header' that is put
on every sound file. 


*********************************************************************
*********************************************************************
************ For general information on the MUSIC program ***********
************ see  USEMUS.LCS[UP,DOC].    For  details  on ***********
************ the MUS10 program see MUS10.DOC[MUS,LCS].    ***********
*********************************************************************
*********************************************************************
**********  INDEX  **********

		  SECTION NUMBER
ALL		. . . 10		RHYTHM		. . . 4,10
AMPLITUDE FACTOR  . . 12
BASIC TIME	. . . 9,11		RTAP		. . . 10,11
BEGIN TIME	. . . 1			RUN		. . . 2,12
BLANK LINES	. . . 1,5		SECTIONS	. . . 13
CHORDS          . . . 5
CODE WORDS	. . . 4			SEG		. . . 11
COMMA		. . . 9			SEMICOLON	. . . 1,8,12
COMMENTS	. . . 1,11		SPEEDS		. . . 15
CONDUCT	        . . . 11  		STAR		. . . 11
CONTINUE        . . . 8
COUNT		. . . 9			SUBROUTINES(SUBN,SUBL) . 9
CUTOFF		. . . 9        		SYNTH		. . . 11
DUPINS		. . . 5
DUPLICATE	. . . 10		
DURATION	. . . 1,9,12		TAP		. . . 10,11
DUTY FACTOR	. . . 10		TEMPO	      . . . 4,10,11
EDIT		. . . 11,12		TEMPO FACTOR  . . . 4,10,12
END		. . . 2,5		TYPE		. . . 12
FINE		. . . 5			X		. . . 5,8
FUNCTIONS	. . . 2,5,9		ZERO		. . . 2

IE (INVISIBLE END). . 10
INSERT		. . . 11
INVERSION	. . . 7
INVISIBLE	. . . 10,11
LETTERS		. . . 5
LITERAL		. . . 5
METRONOME	. . . 4
MIXSCR		. . . 15
MOTIVES		. . . 7
MOVE,MOVX,MOVP	. . . 8
NAMES           . . . 6
NOTES		. . . 2,5
NOTES,EDITED	. . . 11
NUMBERS		. . . 2,5

OMIT		. . . 12
P2		. . . 4,5,8,9,10,12
PLAY		. . . 15
PRECEDE         . . . 11
PRINT		. . . 11
PROXIMITY MODE	. . . 5

RANDOM LISTS	. . . 6
RANDOM SELECTION  . . 3,8
REP,REPEAT	. . . 2,4,6,10
RESTART		. . . 1
RESTS		. . . 4,5,15
RETROGRADE	. . . 7
REVERBERATION	. . . 14